package w83a.w83aOperacionesPaso.w83aImpugnaciones;

import java.util.HashMap;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.lang.StringUtils;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import w83a.w83aUtilidadesComunes.W83aClsConstantes;
import es.ejie.frmk.presentacion.operacion.paso.Q70ActionPasoOP;
import es.ejie.frmk.presentacion.sesiondatos.Q70ContextoEJIE;

public class W83aIrEdicionImpugnacionAction extends Q70ActionPasoOP{

	
	protected void processOP(Q70ContextoEJIE contexto, ActionErrors errores, ActionMapping mapping,
			ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
		//contexto.set("w83aSubOpFlag","busqueda");
		contexto.set("modoPantalla",W83aClsConstantes.MODO_EDICION);
		/*if("impugnaciones".equals((String)contexto.get("w83aSubOpFlag"))){
			contexto.set("strTitleKey","comun.impugnaciones.labels.impugnacionesedicion");
		}*/
		/*W83aUsuarioXLNetsBean usuario= (W83aUsuarioXLNetsBean)contexto.get(W83aClsConstantes.CONSTANTE_CONTEXTO_USUARIO);
		contexto.set("w83aPerfilUsuario", W83aUtilidadesN38API.elegirAdministradorConsulta(usuario.getPerfilXLNets()));
		contexto.set("w83aCodTerritUsuario", W83aUtilidadesN38API.elegirProvinciaDelegacion(usuario.getPerfilXLNets()));
		contexto.set("w83aRegManual", usuario.getRegManual());*/
		
	}

	protected ActionForward processForward(Q70ContextoEJIE contexto, ActionErrors errors, ActionMapping mapping, 
			ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

	
		boolean desdeEdicion=false;
		if (contexto.get("codSelecEdicion")!=null && StringUtils.isNotEmpty((String)contexto.get("codSelecEdicion")))
		{
			desdeEdicion=true;
		}
		if (StringUtils.isNotEmpty(request.getParameter("codSelec")) || desdeEdicion )
		{
			HashMap mapa=new HashMap();
			//W83aUsuarioXLNetsBean usuario= (W83aUsuarioXLNetsBean)contexto.get(W83aClsConstantes.CONSTANTE_CONTEXTO_USUARIO);
			//mapa.put("Usuario",usuario);
			mapa.put("idioma",(String)contexto.get(W83aClsConstantes.CONSTANTE_CONTEXTO_IDIOMA));
			if (StringUtils.isNotEmpty(request.getParameter("codSelec")))
			{
				mapa.put("codSelec", request.getParameter("codSelec"));	

			}
			else
			{
				mapa.put("codSelec",contexto.get("codSelecEdicion"));
			}
			if (StringUtils.isNotEmpty(request.getParameter("pestania")))
			{
				mapa.put("pestania", request.getParameter("pestania"));
				if ("2".equals(request.getParameter("pestania")))
				{
					mapa.put("grid",request.getParameter("grid"));
				}
			}
			else
			{
				mapa.put("pestania", "0");
				contexto.set("w83aMapaFileImpugnaciones", new HashMap());
			}
			
		
			mapa.put("strIdioma", contexto.get(W83aClsConstantes.CONSTANTE_CONTEXTO_IDIOMA));
			//mapa.put("user", contexto.get(W83aClsConstantes.CONSTANTE_CONTEXTO_USUARIO));
			mapa.put("sidx", request.getParameter(W83aClsConstantes.RIA_IDCOLUMNAORDENAR));
			mapa.put("sord", request.getParameter(W83aClsConstantes.RIA_DIRECCIONORDENACION));
			contexto.set("w83aMapaImpugnaciones",mapa );
			int tamano=((String)contexto.get("camino")).length();
			if(!"M".equalsIgnoreCase(((String)contexto.get("camino")).substring(tamano-1,tamano))){
				contexto.set("camino", (String)contexto.get("camino")+"M");
			}
			return mapping.findForward("ok");
		}
		return mapping.findForward("error");

	}

}
